package com.tbit.main.dao.core;

import com.tbit.main.pojo.Battery;
import com.tbit.main.pojo.BatteryGroupBound;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author LMY
 * @create 2021-05-27 13:42
 * 车辆电池绑定
 */
public interface BatteryGroupBoundDao {

    /**
     * 根据区域和电池no查询
     */
    List<Battery> getBatteryNO(String batteryNO);

    /**
     * 根据分组id查询
     */
    List<BatteryGroupBound> getId(Integer id);

    /**
     * 删除分组
     */
    void del(Integer id);


    void addBatteryNOs(List<BatteryGroupBound> batteryGroupBounds);

    /***
     * 添加电池
     */
    void addBatteryNO(@Param("id") Integer id, @Param("batteryNO") String batteryNO, @Param("batteryId") Integer batteryId);

    /***
     * 删除电池
     */
    void delBatteryNO(@Param("batteryNO") String batteryNO);

    /***
     * 删除电池
     */
    void delBatteryNOs(@Param("batteryNOs") String batteryNOs);

    /**
     * 根据电池编号查询
     */
    List<BatteryGroupBound> getByBatteryNOs(@Param("batteryNOs") String batteryNOs);

    /**
     * 根据电池id和分组id查询
     */
    BatteryGroupBound getBatteryNOId(@Param("batteryNO") String batteryNO, @Param("id") Integer id);

    /**
     * 根据区域查询分组数量
     */
    List<BatteryGroupBound> getGroupAccountId(Integer accountId);

    /**
     * 根据电池no查询
     */
    BatteryGroupBound getNO(String batteryNO);

    /**
     * 根据电池no查询
     */
    List<BatteryGroupBound> getNOs(String batteryNO);

    /**
     * 根据分组id查询电池
     */
    List<Battery> getBatteryById(Integer id);


}
